class Solution {
public:
    int countPalindromicSubsequence(string s) {
        int ans=0;
        for(char alpha='a'; alpha<='z'; alpha++) {//枚举两侧字母alpha
            int lpos=s.find(alpha); //最左边alpha下标
            if(lpos==string::npos) continue;//没有
            int rpos=s.rfind(alpha); //最右边的alpha下标
            bool has[26]{};
            for(int k=lpos+1; k<rpos; k++) {//枚举中间字母s[k]->有多少可以替换的
                if(!has[s[k]-'a']) {
                    has[s[k]-'a']=true; //避免重复统计
                    ans++;
                }
            }
        }
        return ans;
    }
};